package com.punch.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.punch.common.dto.system.dict.DictKeyDTO;
import com.punch.common.page.PageInfo;
import com.punch.common.vo.system.dict.PageDictVO;
import com.punch.system.model.SysDictKey;
import com.punch.system.query.DictQueryInfo;


/**
 * DictKeyService-数据字典key 服务类
 *
 * @author wujj
 * @version 1.0.0
 * @since 2020/6/3 20:02
 */
public interface DictKeyService extends IService<SysDictKey> {


    /**
     * 系统下字典类型列表
     *
     * @param queryInfo 查询条件
     * @return PageInfo<PageDictVO>
     */
    PageInfo<PageDictVO> queryPage(DictQueryInfo queryInfo);

    /**
     * 保存数据字典类型
     *
     * @param dictKeyDTO 资源数据字典类型表单
     * @return dictKeyId
     * @author wujj
     * @since 2020/6/4 14:31
     */
    Long saveDictKey(DictKeyDTO dictKeyDTO);

    /**
     * 修改数据字典类型
     *
     * @param dictKeyDTO 资源数据字典类型表单
     * @return dictKeyId
     * @author wujj
     * @since 2020/6/4 14:35
     */
    Long updateDictKey(DictKeyDTO dictKeyDTO);

    /**
     * 删除数据字典类型
     *
     * @param dictKeyId 资源数据字典类型id
     * @return dictKeyId
     * @author wujj
     * @since 2020/6/4 14:38
     */
    Long deleteDictKey(Long dictKeyId);

    /**
     * 启用/停用数据字典
     *
     * @param dictKeyId 资源数据字典类型id
     * @return dictKeyId
     * @author wujj
     * @since 2020/6/4 14:38
     */
    Long updateDictKeyStatus(Long dictKeyId);

}
